Method for inducing a merge candidate block and device using same

ABSTRACT

The present invention relates to a method for inducing a merge candidate block and a device using same. An image decoding method involves decoding motion estimation region (MER) related information; determining whether or not a predicted target block and a spatial merge candidate block are included in the same MER; and determining the spatial merge candidate block to be an unavailable merge candidate block when the predicted target block and the spatial merge candidate block are included in the same MER. Accordingly, by parallely performing the method for inducing a merge candidate, parallel processing is enabled and the computation amount and implementation complexity are reduced.

TECHNICAL FIELD

The present invention relates to a method of encoding and decoding videoand, more particularly, to a method of deriving a merge candidate blockand an apparatus using the same.

BACKGROUND ART

Recently, a demand for a video with a high resolution and a high qualitysuch as a high definition (HD) video and an ultra high definition (UHD)video is increased in various application fields. As resolution andquality of video become higher, an amount of video relatively increasesin comparison to an existing video, and thus, in a case that where thevideo is transmitted using a medium such as an existing wire or wirelessbroadband network or stored in an existing storage medium, atransmission cost and a storage cost would be increased. In order tosolve these problems generated as resolution and quality are gettinghigher, video compression techniques of high efficiency may be utilized.

The video compression techniques include various techniques such as aninter(picture) prediction technique for predicting a pixel valueincluded in a current picture from a before or after picture of thecurrent picture, an intra (picture) prediction technique for predictingthe pixel value included in a current picture by using pixel informationwithin the current picture, and an entropy encoding technique forassigning a shorter code to a high occurrence frequency value andassigning a longer code to a low occurrence frequency value, and thevideo data can be effectively compressed to be transmitted or stored byusing such video compression technique.

DISCLOSURE Technical Problem

The first purpose of the present invention is to provide a method ofderiving a merge candidate with a parallel processing.

The second purpose of the present invention is to provide an apparatusfor performing a method of deriving a merge candidate with a parallelprocessing.

Technical Solution

In accordance with an aspect of the present invention for achieving thefirst objective of the present invention described above, a method ofderiving a merge candidate is provided. The method may include decodingmotion estimation region (MER) related information; determining whethera prediction object block and a spatial merge candidate block areincluded in the same MER; and deciding the spatial merge candidate blockas an unavailable merge candidate block if determining a merge candidateblock which does not use the spatial merge candidate block when theprediction object block and the spatial merge candidate block areincluded in the same MER. The method may further include adaptivelydetermining a spatial merge candidate block according to a size of theMER and a size of the prediction object block if the prediction objectblock and the spatial merge candidate block are included in the sameMER. If the size of the MER is 8×8 and the size of the prediction objectblock is 8×4 or 4×8, at least one of spatial merge candidate blocks ofthe prediction object block may be replaced with a block including apoint located outside of the MER. The method may further includedetermining whether the spatial merge candidate block is included in anMER that is not yet decoded. The method may further include replacingthe spatial merge candidate block with a block included in other MER ifthe prediction object block and the spatial merge candidate block areincluded in the same MER. The replaced spatial merge candidate block maybe a spatial merge candidate block which is adaptively replaced to beincluded in an MER different from the prediction object block accordingto a location of the spatial merge candidate block included in the sameMER. The MER related information may be information related to the sizeof the MER and transmitted in unit of a picture. The determining whetherthe prediction object block and the spatial merge candidate block areincluded in the same MER may include determining whether the predictionobject block and the spatial merge candidate block are included in thesame MER according to a determination equation based on locationinformation of the prediction object block, location information of thespatial merge candidate block, and size information of the MER.

In accordance with another aspect of the present invention for achievingthe second objective of the present invention described above, an imagedecoding apparatus is provided. The apparatus may include an entropydecoding unit for decoding motion estimation region (MER) relatedinformation and a prediction unit for determining whether a predictionobject block and a spatial merge candidate block are included in thesame MER and deciding the spatial merge candidate block as anunavailable merge candidate block if the prediction object block and thespatial merge candidate block are included in the same MER. Theprediction unit may be a prediction unit which adaptively determines aspatial merge candidate block according to a size of the MER and a sizeof the prediction object block if the prediction object block and thespatial merge candidate block are included in the same MER. If the sizeof the MER is 8×8 and the size of the prediction object block is 8×4 or4×8, the prediction unit may replace at least one of spatial mergecandidate blocks of the prediction object block with a block including apoint located outside of the MER. The prediction unit may determinewhether the spatial merge candidate block is included in an MER that isnot yet decoded. The prediction unit may be a prediction unit whichreplaces the spatial merge candidate block with a block included inother MER when the prediction object block and the spatial mergecandidate block are included in the same MER. The replaced spatial mergecandidate block may be a spatial merge candidate block which isadaptively replaced to be included in an MER different from theprediction object block according to a location of the spatial mergecandidate block included in the same MER. The MER related informationmay be information related to the size of the MER, and transmitted inunit of a picture. The prediction unit may be a prediction unit whichdetermines whether the prediction object block and the spatial mergecandidate block are included in the same MER based on a determinationequation according to location information of the prediction objectblock, location information of the spatial merge candidate block, andsize information of the MER.

Advantageous Effects

According to a method of deriving a merge candidate block and anapparatus using same described in exemplary embodiments of the presentinvention, a parallel processing can be achieved by performing themethod of deriving the merge candidate block in parallel, thus, acomputational quality and implemental complexity can be reduced.

DESCRIPTION OF DRAWINGS

FIG. 1 is a block diagram illustrating a video encoder according to anexemplary embodiment of the present invention.

FIG. 2 is a block diagram illustrating a video decoder according toanother exemplary embodiment of the present invention.

FIG. 3 is a conceptual view illustrating candidate blocks for applying amerge mode and a skip mode according to an exemplary embodiment of thepresent invention.

FIG. 4 is a conceptual view illustrating a method of deciding a mergecandidate block according to an exemplary embodiment of the presentinvention.

FIG. 5 is a conceptual view illustrating a method of deciding a mergecandidate block according to a size of an MER according to an exemplaryembodiment of the present invention.

FIG. 6 is a conceptual view illustrating a method of determining whethera spatial merge candidate block of a current block is available.

FIG. 7 is a flow chart illustrating a method of obtaining a spatialmerge candidate block in a merge mode according to an exemplaryembodiment of the present invention.

FIG. 8 is a flow chart illustrating a method of inter predictionapplying a merge mode according to an exemplary embodiment of thepresent invention.

MODE FOR INVENTION

While various modifications and example embodiments can be made, onlyparticular example embodiments will be described more fully herein withreference to the accompanying drawings. However, the present inventionshould not be construed as limited to only the example embodiments setforth herein but rather should be understood to cover all modifications,equivalents or alternatives falling within the scope and technical termsof the invention. Like numbers refer to like elements throughout thedrawings.

It will be understood that, although the terms first, second, etc. maybe used herein to describe various elements, these elements should notbe limited by these terms. These terms are only used to distinguish oneelement from another. These terms are only used to distinguish oneelement from another element. For example, a first element could betermed a second element without departing from the teachings of thepresent invention, and similarly, the second element could be termed thefirst element. The term “and/or” includes a combination of a pluralityof associated listed items or any of the plurality of the associatedlisted items.

It will be understood that, when a feature or element is referred to asbeing “connected” or “coupled” to another feature or element, it can bedirectly connected or coupled to the other element or interveningelements may be present. In contrast, when a feature or element isreferred to as being “directly connected” or “directly coupled” toanother element, it will be understood that there are no interveningelements present.

The terminology used herein is for the purpose of describing particularembodiments only and is not intended to be limiting of exampleembodiments of the invention. The singular forms “a”, “an” and “the” areintended to include the plural forms as well, unless the context clearlyindicates otherwise. It will be understood that the terms “comprises,”or “includes,” when used herein, specify the presence of statedfeatures, integers, steps, operations, elements, components or anycombinations thereof, but do not preclude the presence or addition ofone or more other features, integers, steps, operations, elements,components, or any combinations thereof.

Hereinafter, the present invention will be described in detail withreference to the accompanying drawings. Hereinafter, the same referencenumbers are used throughout the drawings to refer to the same parts anda repetitive explanation of the same parts will be omitted.

FIG. 1 is a block diagram illustrating a video encoder according to anexemplary embodiment of the present invention.

Referring to FIG. 1, a video encoder 100 may include a picturepartitioning module 110, an inter prediction module 120, an intraprediction module 125, a transform module 130, a quantization module135, a re-arranging module 160, an entropy encoding module 165, andequantization module 140, an inverse transform module 145, a filteringmodule 150, and a memory 155.

Each module shown in FIG. 1 is independently illustrated in order toprovide different features of functions in the video encoder and is notintended to mean that each module is configured as a separate hardwareor a software component unit. That is, each module is listed asrespective element for illustrative purposes, and at least two modulesamong modules may be combined into one element or one module may bedivided into a plurality of elements to perform a function, and anembodiment in which the respective modules are combined or divided isincluded in the claim scope of the present invention without departingfrom the essence of the present invention.

Also, a part of elements may not be an indispensable element forperforming an essential function in the present invention but merely aselective element for improving performance. The present invention maybe implemented only with elements essential for implementing the essenceof the present invention and excluding elements used merely to improveperformance, and a configuration including only the essential elementsexcluding the selective elements, which are used only to improveperformance, is also included in the claim scope of the presentinvention.

The picture partitioning module 110 may split an input picture into atleast one processing unit. Here, the processing unit may be a predictionunit (PU), a transform unit (TU), or a coding unit (CU). The picturepartitioning module 110 may split one picture into a combination of aplurality of coding units, prediction units and transform units and mayencode the picture by selecting one combination of a coding unit,prediction unit(s) and transform unit(s) based on a predeterminedcriterion (for example, a cost function).

For example, one picture may be partitioned into a plurality of thecoding units. In order to partition the coding unit, a recursive treestructure such as a quad tree structure may be used, and a coding unitwhich is split into other coding units with a picture or a largestcoding unit as a root may be split to have a child node as many as anumber of split coding units. A coding unit that is not split anyfurther according to a certain constraint becomes a leaf node. In otherwords, when it is assumed that only a square partitioning is availablefor one coding unit, one coding unit may be split up to four differentcoding units.

Hereinafter, in exemplary embodiments of the present invention, thecoding unit may be used to refer to not only a unit for encoding butalso a unit for decoding.

The prediction unit may be partitioned with a form of squares orrectangles having the same size within one coding unit.

When generating the prediction unit for performing an intra predictionbased on the coding unit, if the coding unit is not a smallest codingunit, the intra prediction may be performed without being split into aplurality of prediction units in an N×N unit.

The prediction module may include the inter prediction module 120 forperforming an inter prediction and the intra prediction module 125 forperforming an intra prediction. With respect to the prediction unit, theprediction module may determine whether to perform the inter predictionor whether to perform the intra prediction, and specific information(e.g., an intra prediction mode, a motion vector, a reference picture,etc.) according to each prediction method may determine. Here, aprocessing unit for performing the prediction and a processing unit fordetermining the prediction method and a specific detail may bedifferent. For example, the prediction method and the prediction modemay be determined in the prediction unit and the prediction may beperformed in the transform unit. A residual value (a residual block)between a generated prediction block and an original block may beinputted to the transform module 130. Also, prediction mode information,motion vector information, etc. used for the prediction may be encodedin the entropy encoding module 135 along with the residual value to betransmitted to the decoder. When a specific encoding mode used, it ispossible that the prediction block is not generated through theprediction module 120, 125 but the original block is encoded as it is tobe transmitted to a decoder.

The inter prediction module may predict on the prediction unit based oninformation of at least one picture among pictures before or after for acurrent picture. The inter prediction module may include a referencepicture interpolation module, a motion prediction module, and a motioncompensation module.

The reference picture interpolation module may be provided withreference picture information from the memory 155 and may generate pixelinformation in less than an integer pixel unit from the referencepicture. In case of a luma pixel, a DCT-based 8 tap interpolation filtermay be used in which a filter coefficient is varied to generate pixelinformation less than the integer pixel unit by a unit of ¼ pixel. Incase of a chroma signal, a DCT-based 4 tap interpolation filter may beused in which a filter coefficient is varied to generate pixelinformation less than the integer pixel unit by a unit of ⅛ pixel.

The motion prediction module may perform motion prediction based on areference picture interpolated by the reference picture interpolationmodule. For a method of obtaining the motion vector, various methodssuch as FBMA (Full search-based Block Matching Algorithm), TSS (ThreeStep Search), or NTS (New Three-Step Search Algorithm) may be used. Themotion vector may have a motion vector value in a unit of ½ or ¼ pixelbased on the interpolated pixel. The motion prediction module maypredict a current prediction unit by varying the motion predictionmethod. As a motion prediction method, various methods such as a skipmode, a merge mode, or advanced motion vector prediction (AMVP) mode maybe used.

According to exemplary embodiments of the present invention, whenperforming the inter prediction, the motion estimation region (MER) maybe defined to perform the prediction in parallel. For example, whenperforming the inter prediction using the merge mode or the skip mode,whether a prediction object block and a spatial merge candidate blockare included in the same MER may be determined, and when the predictionobject block and the spatial merge candidate block are not included inthe same MER, the spatial merge candidate block may be determined as notavailable or a merge candidate block may be determined by determiningwhether the spatial merge candidate block is included in an MER that isnot yet decoded. Hereinafter, in exemplary embodiments of the presentinvention, an operation of the prediction unit when performing the interprediction is described.

The inter prediction unit may generate the prediction unit based oninformation on reference pixels neighboring a current block, where thereference pixels are pixels within the current picture. If a neighboringblock of the current prediction unit is a block on which the interprediction is performed such that a reference pixels are pixels on whichthe inter prediction is performed, the reference pixels included in theblock on which the inter prediction is performed may be replaced withthe reference pixels of the neighboring block on which the intraprediction is performed. In other words, when the reference pixel is notavailable, reference pixels which are not available may be replaced withat least one reference pixel among available reference pixels.

The intra prediction may have directional prediction modes which useinformation on the reference pixels according to a prediction directionand non-directional modes which do not use the directional informationwhen performing the prediction. A mode for predicting information onluma samples and a mode for predicting information on chroma samples maybe different. Further, information on intra prediction mode which isused for the luma samples or information on predicted luma signal may beutilized to predict information on chroma samples.

In case where a size of the prediction unit and a size of the transformunit are the same when performing the intra prediction, the intraprediction may be performed on the prediction unit based on pixels whichexist in a left side of the prediction unit, pixels which exist in aleft upper region, and pixels which exist on an upper region. However,in a case where the size of the prediction unit and the size of thetransform unit are different when performing the intra prediction, theintra prediction may be performed by using the reference pixels based onthe transform unit. Also, the intra prediction which uses N×N divisiononly with respect to the smallest coding unit may be used.

In the intra prediction method, according to the prediction mode, a modedependent intra smoothing (MDIS) filter may be applied to the referencepixel to generate the prediction block. A kind of the MDIS filter whichapplies to the reference pixel may be different. In order to perform theintra prediction, the intra prediction mode of the current predictionunit may be predicted from the intra prediction mode of the predictionunit neighboring to the current prediction unit. When predicting theprediction mode of the current prediction unit by using mode informationpredicted from a neighboring prediction unit, if the intra predictionmodes of the current prediction unit and the neighboring prediction unitare the same, information that the prediction modes of the currentprediction unit and the neighboring prediction unit are the same may betransmitted using predetermined flag information, and if the predictionmodes of the current prediction unit and the neighboring prediction unitare different, the prediction mode information of the current block maybe decoded by entropy encoding.

Also, a residual block including residual value information which is adifference between the prediction unit on which the prediction isperformed based on the prediction unit generated in the predictionmodule 120, 125 and an original block of the prediction unit. Thegenerated residual block may be inputted to the transform module 130.The transform module 130 may transform the residual block including theresidual value information of the original block and the prediction unitgenerated in the prediction module 120, 125 by using a transform methodsuch as a discrete cosine transform (DCT) or a discrete sine transform(DST). Whether to apply the DCT or the DST in order to transform theresidual block may be determined based on the intra prediction modeinformation of the prediction unit used for generating the residualblock.

The quantization module 135 may quantize values transformed into afrequency domain by the transform module 130. Depending on a block or animportance of an image, a quantization parameter may be varied. A valueoutputted by the quantization module 135 may be provided to thedequantization module 140 and the re-arranging module 160.

The rearranging module 160 may re-arrange the quantized coefficientvalue with respect to the residual value.

The re-arranging module 160 may modify a coefficient of a twodimensional array of block form into a form of a one dimensional vectorthrough a coefficient scanning method. For example, in the re-arrangingmodule 160, from a DC coefficient to a coefficient in a high frequencydomain may be scanned to be rearranged to a one dimension vector form byusing a diagonal scan mode. According to a size of a transform unit andthe intra prediction mode, a vertical scan mode of scanning twodimensional coefficients in a block form in a column direction or ahorizontal scan mode of scanning the two dimensional coefficients in theblock form in a row direction may be used instead of the diagonal scanmode. In other words, it may be determined which scan mode among thediagonal scan mode, the vertical scan mode, and the horizontal scan modeis used according to the size of the transform unit and the intraprediction mode.

The entropy encoding module 165 performs the entropy encoding based onvalues outputted from the re-arranging module 160. The entropy encodingmay use various encoding methods such as, for example, ExponentialGolomb, Context-Adaptive Binary Arithmetic Coding (CABAC).

The entropy encoding unit 165 may encode various information such asresidual coefficient information of coding unit and block typeinformation, prediction mode information, partition unit information,prediction unit information, transmission unit information, motionvector information, reference picture information, interpolationinformation on a block, filtering information, MER information, etc.from the re-arranging module 160 and the prediction module 120, 125.

The entropy encoding unit 165 may perform the entropy encoding on thecoefficient value in the coding unit inputted from the re-arrangingmodule 160 by using the entropy encoding method such as CABAC.

The dequantization module 140 and the inverse transform module 145dequantizes values quantized by the quantization module 135 andinversely transforms the values transformed by the transform module 130.The residual value generated by the dequantization module 140 and theinverse transform module 145 may be added to the prediction unitpredicted through the motion estimation module, the motion compensationmodule and the intra prediction module included in the prediction module120, 125 to generate a reconstructed block.

The filtering module 150 may include at least one of a deblockingfilter, an offset correction module, and an adaptive loop filter (ALF).

The deblocking filter may remove a block distortion generated due to aboundary between blocks in a reconstructed picture. In order todetermine whether to perform the deblocking filtering, it may bedetermined whether to apply the deblocking filter to the current blockbased on pixels included in several columns or rows included in theblock. When applying the deblocking filter to the block, a strong filteror a weak filter may be applied depending on a required deblockingfiltering strength. Also, in applying the deblocking filter, whenperforming a vertical filtering and a horizontal filtering, a horizontaldirection filtering and a vertical direction filtering may be processedin parallel.

The offset correction module may correct an offset from an originalimage by a pixel unit with respect to the image on which the deblockingfiltering is performed. In order to perform the offset correction withrespect to a specific picture, a method of classifying pixels includedin the image into a predetermined number of regions, determining aregion on which the offset is to be performed and applying the offset toa corresponding region or a method of applying the offset by consideringedge information of each pixel may be used.

The adaptive loop filter (ALF) may perform filtering based on acomparison of the filtered reconstructed image and the original image.After classifying pixels included in the image into a predeterminedgroup and determining a filter to be applied to a corresponding group,and then the filtering may be applied to each group determined todifferentially with each filter. Information about whether to apply theALF may be transmitted by the coding unit (CU) and a size and acoefficient of the ALF to be applied may be different for each block.The ALF may have various shapes, and therefore a number of coefficientsin the filter may be different for each filter. Filtering relatedInformation of ALF (filter coefficient information, ALF On/Offinformation, filter shape information, etc.) may be included andtransmitted in a predetermined parameter set in a bitstream

The memory 155 may store a reconstructed block or picture outputted fromthe filtering module 150, and the stored reconstructed block or picturemay be provided to the prediction module 120, 125 when performing theinter prediction.

FIG. 2 is a block diagram illustrating an image decoder according toanother exemplary embodiment of the present invention.

Referring to FIG. 2, a video decoder may include an entropy decodingmodule 210, a re-arranging module 215, a dequantization module 220, aninverse transform module 225, a prediction module 230, 235, a filtermodule 240, and a memory 245.

When a video bitstream is inputted from the video encoder, the inputbitstream may be decoded in an order opposite to the processing order inthe video encoder.

The entropy decoding module 210 may perform entropy decoding in anopposite order of performing the entropy encoding in the entropyencoding module of the video encoder. Information for generating theprediction block among information decoded by the entropy decodingmodule 210 may be provided to the prediction module 230, 235 and theresidual values which are entropy decoded in the entropy decoding modulemay be inputted to the re-arranging module 215.

The entropy decoding module 210 may decode information related to theintra prediction and the inter prediction performed by the encoder. Asdescribed above, when there is a predetermined constraint for the intraprediction and the inter prediction in the video encoder, informationrelated to the intra prediction and the inter prediction of the currentblock may be provided by performing the entropy decoding based on theconstraint.

The re-arranging module 215 may perform rearrangement of the bitstreamwhich is entropy decoded by the entropy decoding module 210 based on are-arranging method of the encoder. Coefficients represented in a onedimensional vector form may be reconstructed and re-arranged in a twodimensional block form.

The dequantization module 220 may perform dequantization based on thequantization parameter provided from the encoder and the rearrangedcoefficients block.

The inverse transform module 225 may perform an inverse DCT and aninverse DST on a result of quantization performed by the video encoderwith respect to the DCT and the DST performed by the transform module.The inverse transform may be performed based on the transmission unitdetermined by the video encoder. In the transform module of the videoencoder, the DCT and the DST may be selectively performed according to aplurality of information such as the prediction method, the size of thecurrent block, and the prediction direction, and the inverse transformmodule 225 of the video decoder may perform inverse transform based ontransform information performed in the transform module of the videoencoder.

The prediction module 230, 235 may generate the prediction block basedon information related to generating the prediction block provided fromthe entropy decoding module 210 and information of the previouslydecoded block or picture provided form the memory 245.

The prediction module 230, 235 may include a prediction unitdetermination module, an inter prediction module, and an intraprediction module. The prediction unit determination module may receivevarious information such as prediction unit information, prediction modeinformation of the intra prediction method, and motion predictionrelated information of the inter prediction method inputted from theentropy decoder, distinguish the prediction unit in the current codingunit based on the received information, and determine whether the interprediction is performed on the prediction unit or the intra predictionis performed on the prediction unit. The inter prediction unit mayperform the inter prediction with respect to the current prediction unitbased on information included in at least one picture between theprevious pictures and the subsequent pictures of the current pictureincluding the current prediction unit by using information required forthe inter prediction of the current prediction unit provided by thevideo encoder.

In order to perform the inter prediction, it may be determined based onthe coding unit whether the motion prediction method in the predictionunit included in a corresponding coding unit is the skip mode, the mergemode, or the AMVP mode.

According to an exemplary embodiment of the present invention, whenperforming the inter prediction, the motion estimation region (MER) maybe defined to perform the prediction in parallel. For example, whenperforming the inter prediction using the merge or the skip, whether theprediction object block and the spatial merge candidate block areincluded in the same MER may be determined. When the prediction objectblock and the spatial merge candidate block are not included in the sameMER, the spatial merge candidate block may be determined as unavailableor the spatial merge candidate block may be determined as mergecandidate block by determining whether the spatial merge candidate blockis included in an MER that is not yet decoded. An operation of theprediction module will be described in detail in an exemplary embodimentof the present invention.

The intra prediction module may generate a prediction block based onpixel information within the current picture. When the prediction unitis a predicting unit for performing the intra prediction, the intraprediction may be performed based on intra prediction mode informationof the prediction unit provided by the video encoder. The intraprediction module may include the MDIS filter, a reference pixelinterpolation module, and a DC filter. The MDIS filter is a module forperforming filtering on the reference pixel of the current block, andwhether to apply the filter may be determined and applied according tothe prediction mode of the current prediction unit. The filtering may beperformed on the reference pixel of the current block by using theprediction mode of the prediction unit and the MDIS filter informationprovided by the video encoder. When the prediction mode of the currentblock is a mode that does not perform the filtering, the MDIS filter maynot apply.

The reference pixel interpolation module may generate a reference pixelin pixel unit less than an integer value by interpolating the referencepixel when the prediction mode of the prediction unit is the predictionunit for performing intra prediction based on a pixel value of theinterpolated reference pixel. When the prediction mode of the currentprediction unit is a prediction mode that generates the prediction blockwithout interpolating the reference pixel, the reference pixel may notbe interpolated. The DC filter may generate the prediction block throughfiltering if the prediction mode of the current block is a DC mode.

The reconstructed block or picture may be provided to the filter module240. The filter module 240 may include a deblocking filter, an offsetcorrection module, an ALF.

Information on whether the deblocking filter is applied to acorresponding block or picture and whether a strong filter or a weakfilter is applied if the deblocking filter is applied may be providedfrom the video encoder. The deblocking filter of the video decoder maybe provided with information about the deblocking filter from the videoencoder and perform deblocking filtering for the corresponding block inthe video decoder. Same as the video encoder, a vertical deblockingfiltering and a horizontal deblocking filtering are first performedwhile at least one of the vertical deblocking and the horizontaldeblocking may be performed in an overlapped area. In the overlappedarea of the vertical deblocking filtering and the horizontal deblockingfiltering, the vertical deblocking filtering or the horizontaldeblocking filtering which has not previously performed may beperformed. Through this deblocking filtering process, a parallelprocessing of the deblocking filtering may be possible.

The offset correction module may perform offset correction on thereconstructed image based on a type of the offset correction applied tothe image and offset value information.

The ALF may perform filtering based on a value of comparing the originalimage and the reconstructed image through filtering. The ALF may beapplied to the coding unit based on information about whether to applythe ALF, information about an ALF coefficient provided from the decoder.The ALF information may be included in a particular parameter set to beprovided.

The memory 245 may store the reconstructed picture or block to be usedas the reference picture or the reference block and the reconstructedpicture may be provided to the output module.

As described above, although the coding unit is used to refer to a unitof coding in an exemplary embodiment, the coding unit may be a unit forperforming not only the encoding but also the decoding. Hereinafter, aprediction method described in FIGS. 3 through 11 according to anexemplary embodiment of the present invention may be performed by anelement such as the prediction module included in FIG. 1 and FIG. 2.

FIG. 3 is a conceptual view illustrating candidate blocks for applyingmerge mode and skip mode according to an exemplary embodiment of thepresent invention.

Hereinafter, for illustrative purposes, a description is made withrespect to the merge mode in an exemplary embodiment of the presentinvention; however, the same method may be applied to the skip mode andsuch embodiment is also included in the scope of claims in the presentinvention.

Referring to FIG. 3, in order to perform the inter prediction throughthe merge mode, spatial merging candidate blocks 300, 305, 310, 315, 320and temporal merging candidate blocks 350, 355 may be used.

When a point (xP, yP) located on a upper left portion of the predictionobject block relative to a location of the prediction object block, witha width of the prediction object block, nPSW and a height of theprediction object block, sPSH, each block of the spatial mergingcandidate blocks 300, 305, 310, 315, 320 may be one of a first block 300including a point (xP−1, yP+nPSH-MinPuSize), a second block 305including a point (xP+nPSW-MinPuSize, yP−1), a third block 310 includinga point (xP+nPSW, yP−1), a fourth block 315 including a point (xP-1,yP+nPSH), and a fifth block 320 including a point (xP-MinPuSize, yP−1).

The temporal merging candidate may use a plurality of candidate blocksand a first Col block (collocated block) 350 may be a block including apoint (xP+nPSW, yP+nPSH) located on a Col picture (collocated picture).If the first Col block 350 does not exist or is not available (forexample, if the first Col block does not perform the inter prediction),a second Col block 355 including a point (xP+(nPSW>>1), yP+(nPSH>>1))located on the Col picture may be used instead.

According to an exemplary embodiment of the present invention, in orderto perform the inter prediction using the merge mode in parallel whenperforming the motion prediction, whether to use the merging candidateblock relative to a certain area may be determined. For example, inorder to determine the merging candidate block for performing the mergemode, relative to a predetermined area of a certain size, it may bedetermined whether the merging candidate block exists within thepredetermined area together with the prediction object block todetermine whether to use the merging candidate block or not, or toreplace with other merging candidate block, thereby performing themotion prediction in parallel relative to the predetermined area.Hereinafter, a parallel motion prediction method using the merge modewill be described in an exemplary embodiment of the present invention.

FIG. 4 is a conceptual view illustrating a method of determining amerging candidate block according to an exemplary embodiment of thepresent invention.

Referring to FIG. 4, it is assumed that a largest coding unit (LCU) issplit into four motion estimation regions (MER).

In case of a first prediction block PU0 included in a first MER (MER0),similar to FIG. 4, when the inter prediction is performed by using themerge mode with respect to the first prediction block PU0, five spatialmerging candidate blocks 400, 405, 410, 415, 420 may exist as thespatial merging candidate blocks. The five merging candidate blocks 400,405, 410, 415, 420 may exist in a location not included in the first MER(MER0) and may be blocks on which encoding/decoding has already beenperformed.

The second prediction block (PUT) is a prediction block included in asecond MER (MER1) and four merging candidate blocks 430, 435, 445, 450among the spatial merging candidate blocks 430, 435, 440, 445, 450 forperforming the inter prediction using the merge mode may be blocks thatexist within the second MER (MER1) and blocks that belong to the sameMER which currently performs the prediction. The remaining one mergingcandidate block 440 may be a block that exists in a right side of thecurrent MER and a block included in the LCU or MER on whichencoding/decoding has not yet performed.

According to an exemplary embodiment of the present invention, when themerging candidate block of the current block and the current blockbelong to the same MER, the merging candidate block of the current blockis excluded and motion information of at least one block at anotherlocation may be added as the merging candidate according to a size ofthe current block and an MER size.

A block including a point that exists in other MER in a vertical orhorizontal direction may be added as the merging candidate block.Alternatively, a block that belongs to other MER at a location closestto the candidate block may be added as the merging candidate block.Alternatively, a block at a predetermined location according to a shapeand a size of the current block may be added as a merging candidateblock.

For an example, in case of the merging candidate block 435 located in anupper side of the second prediction unit (PU1) and the merging candidateblock 450 located in an upper left side of the second prediction unit,blocks 455, 460 including points located outside the second MER in thevertical direction may be used as replaced merging candidate blocks. Forthe merging candidate block 430 located in a left side of the secondprediction unit and the merging candidate block 445 located in a lowerleft side of the second prediction unit, blocks 465, 470 includingpoints outside the MER in the horizontal direction may be used as thereplaced merging candidate blocks. When a block is included in the sameMER with the current prediction unit and thus cannot be used as themerging candidate block, the merging candidate block may be replacedwith other block including a point in other MER according to a locationof the merging candidate block.

In case of a third prediction block (PU2), a merging candidate block 475included in the same MER with the third prediction block may be replacedto be used by a block 480, which exists in an upper side in the verticaldirection. Further, as another exemplary embodiment of the presentinvention, it is possible to replace the location of the mergingcandidate block by replacing a location of the spatial merging candidateblock with a block included in other MER in a direction not the verticalor horizontal direction and this exemplary embodiment is also includedin the claim scope of the present invention.

The following steps may be performed in order to perform a method fordetermining the merging candidate blocks.

1) Step of Decoding Motion Estimation Region (MER) Related Information

The MER related information may include information on a size of theMER. Whether the prediction object block is included in the MER may bedetermined based on the information on the size of the MER and the sizeof the prediction object block.

2) Step of Determining Whether the Prediction Object Block and theSpatial Merging Candidate Block are Included in the Same MER

In the case that the prediction object block and the spatial mergingcandidate block are included in the same MER, the following steps may beperformed to adaptively determine the spatial merging candidate blockaccording to the size of the MER and the size of the prediction objectblock.

3) Step of Determining that the Spatial Merging Candidate Block isUnavailable when the Prediction Object Block and the Spatial MergingCandidate Block are Included in the Same MER

When the prediction object block and the spatial merging candidate blockare included in the same MER, the spatial merging candidate block may bedetermined as unavailable and the spatial merging candidate blockincluded in the same MER may be replaced with other merging candidateblock. Also, as described below, it is possible that the mergingcandidate block which is determined as unavailable may not be used inthe inter prediction with the merge mode.

According to another exemplary embodiment of the present invention, amethod which does not use the merging candidate block included in thesame MER with the prediction object block also can be applied.

For example, among merging candidate blocks, blocks which is included anMER which encoding/decoding is already performed on and if differentfrom a current MER which prediction is currently performed on, areavailable for the inter prediction applying merge mode in parallel. Theblocks may be used as the inter prediction candidate blocks with themerge mode. However, blocks that belong to the MER on which theprediction is currently performed may not be used as the interprediction candidate block for the inter prediction with the merge mode.The block on which encoding/decoding is not performed may either not beused as the inter prediction candidate block. This exemplary embodimentis also included in the claim scope of the present invention.

FIG. 5 is a conceptual view illustrating a method of determining amerging candidate block based on a size of an MER according to anexemplary embodiment of the present invention.

Referring to FIG. 5, the merging candidate may be adaptively determinedaccording to the size of the MER and the size of the current predictionunit. For example, in a case where a merging candidate corresponding toone of the location of merging candidates A, B, C, D, E is included inthe same MER with the current prediction unit, the merging candidate isdetermined as unavailable. Here, motion information of at least oneblock at other location may be added as the merging candidate accordingto the size of the current block and the size of the MER.

In FIG. 5, it is assumed that the size of the MER is 8×8 and theprediction object block is 4×8. When the MER size is 8×8, a block of Aincluded in the prediction object block belongs to the same MER with theprediction object block and blocks of B, C, D and E are included in adifferent MER from the prediction object block.

In case of the block of A, the block may be replaced with a location ofa block (for example, block of A′) which is included in the differentMER. Therefore, according to an exemplary embodiment of the presentinvention, when the merging candidate block of the current block and thecurrent block belong to the same MER, the merging candidate block of thecurrent block may be excluded from a block for merging candidate suchthat the motion information of at least one block at other location maybe added as the merging candidate according to the size of the currentblock and the MER size.

According to an exemplary embodiment of the present invention, the sizeinformation of the MER may be included in upper level syntax informationto be transmitted.

Table 1 below is associated with a method of transmitting the sizeinformation on the MER in the upper level syntax.

TABLE 1 pic_parameter_set_rbsp( ) { Descriptor pic_parameter_set_idue(v) seq_parameter_set_id ue(v) entropy_coding_mode_flag u(1)num_temporal_layer_switching_point_flags ue(v) for( i = 0; i <num_temporal_layer_switching_point_flags; i−−) temporal_layer_switchingpoint_flag[ i ] u(1) num_ref_idx_l0_default_active_minus1 ue(v)num_ref_idx_l1_default_active_minus1 ue(v) pic_init_qp_minus26 /*relative to 26 */ se(v) constrained_intra_pred_flag u(1)shared_pps_info_enabled_flag u(1) if( shared_pps_info_enabled_flag) if(adaptive_loop_filter_enabled_flag) alf_param( ) if(cu_qp_delta_enabled_flag) max_cu_qp_delta_depth u(4)log2_parallel_merge_level_minus2 ue(v) rbsp_trailing_bits( ) }

Referring to Table 1, the size information of the MER may be obtainedbased on a syntax element log 2_parallel_merge_level_minus2 included ina high level syntax structure such as a picture parameter set. A syntaxelement log 2_parallel_merge_level_minus2 may also be included in a highlevel syntax structure other than the picture parameter set, and thisexemplary embodiment is also included in the claim scope of the presentinvention.

Table 2 below describes a relationship between a value of log2_parallel_merge_level_minus2 and the size of the MER.

TABLE 2 MER log2_parallel_merge_level_minus2 size Remark 0 4 × 4Sequential merge skip mode for all PUs in a LCU because minimum PU sizeallowed by HEVC is 4 × 4 1 8 × 8 Parallel merge skip mode search allowedfor all PUs inside an 8 × 8 block 2 16 × 16 Parallel merge skip modesearch allowed for all PUs inside a 16 × 16 block 3 32 × 32 Parallelmerge skip mode search allowed for all PUs inside a 32 × 32 block 4 64 ×64 Parallel merge skip mode search allowed for all PUs inside a 64 × 64block

Referring to Table 2, the value of log 2_parallel_merge_level_minus2 mayhave a value from 0 to 4 inclusively, and the size of MER size may bespecified differently according to the value of the syntax element. Whenthe MER is 0, it is the same as performing the inter prediction usingthe merge mode without using the MER.

The syntax element including the size information of the MER may be, inan exemplary embodiment of the present invention, represented and usedas the term “MER size information syntax element” and defining the MERsize information syntax element as in Table 2 is an example and it ispossible to specify the MER size using various different methods andsuch a syntax element expression method is also included in the claimscope of the present invention.

FIG. 6 is a conceptual view illustrating a method of determining whethera spatial merging candidate block of the current block is available.

Referring to FIG. 6, based on locations of a prediction object block 600and a spatial merging candidate block 650 neighboring to the predictionobject block 600 and the MER size information syntax element,availability of the spatial merging candidate block may be determined.

When it is assumed that (xP, yP) is a point at a left top of theprediction object block and (xN, yN) is a point at a left top of themerging candidate block, whether the spatial merging candidate block isavailable may be determined through the following Math 1 and Math 2.

(xP>>(log 2_parallel_merge_level_minus2+2))==(xN>>log2_parallel_merge_level_minus2+2))  <Math 1>

(yP>>(log 2_parallel_merge_level_minus2+2))==(yN>>log2_parallel_merge_level_minus2+2))  <Math 2>

The above Math 1 and the Math 2 are exemplary equations for determiningwhether the merging candidate block and the prediction object block areincluded in the same MER. In addition, whether the merging candidateblock and the prediction object block are included in the same MER maybe determined by using a method other than the above determinationmethod as long as it does not depart from the essence of the presentinvention.

FIG. 7 is a flow chart illustrating a method of obtaining a spatialmerging candidate block in a merge mode according to an exemplaryembodiment of the present invention.

Referring to FIG. 7, the MER related information is decoded (step S700).

The MER related information may be syntax element information, asdescribed above, and may be included in the high level syntax structure.Based on the decoded MER related information, it may be determinedwhether the spatial merging candidate block and the prediction objectblock are included in the same MER or in different MERs.

It is determined whether the spatial merging candidate block and theprediction object block are included in the same MER (step S710).

According to an exemplary embodiment of the present invention, when themerging candidate block of the current block and the current block areincluded in the same MER, the merging candidate block of the currentblock may be excluded and the motion information of at least one blockof different location from the merging candidate block may be added as amerging candidate according to the size of the current block and the MERsize (step S720). According to another exemplary embodiment of thepresent invention, when a spatial merging candidate block and theprediction object block are included in the same MER, instead of usingthe spatial merging candidate block included in the MER as the mergingcandidate block, a block included in other MER with other location mayreplace the spatial merging candidate block to perform the interprediction.

Also, in another exemplary embodiment, when a spatial merging candidateblock and the prediction object block are included in the same MER, thespatial merging candidate block included in the MER may not be used asthe merging candidate block, as described above.

When the spatial merging candidate block and the prediction candidateblock are not included in the same MER, the inter prediction isperformed based on a corresponding spatial merging candidate block (stepS730).

FIG. 8 is a flow chart illustrating a method of inter prediction using amerge mode according to an exemplary embodiment of the presentinvention.

Referring to FIG. 8, the motion prediction related information isderived from the spatial merging candidate (step S800).

The spatial merging candidate may be derived from the neighboringprediction unit of the prediction object block. In order to derive thespatial merging candidate, width and height information of theprediction unit, the MER information, singleMCLFlag information, andinformation on the location of partition may be provided. Based on theabove input information, information (availableFlagN) about availabilityof the spatial merging candidate, reference picture information(refldxL0, refldxL1), list utilization information (predFlagL0N,predFlagL1N), and motion vector information (mvL0N, mvL1N) may bederived according to a location of the spatial merging candidate. Thespatial merging candidate may be a plurality of blocks neighboring tothe prediction object block.

According to an exemplary embodiment of the present invention, thespatial merging candidate block may be classified into three as thefollows: 1) a spatial merging candidate block that is not included inthe same MER and is already encoded or decoded, 2) a spatial mergingcandidate block that is included in the same MER, and 3) a spatialmerging candidate block on which encoding and decoding has not yet beenprocessed.

According to an exemplary embodiment of the present invention, in orderto perform the inter prediction in parallel in unit of the MER, amongthe spatial merging candidate blocks for performing the interprediction, the spatial merging candidate block that is not included inthe same MER and is already encoded or decoded may be used as thespatial merging candidate block. Further, the spatial merging candidateblock which replaces a location of the spatial merging candidate blockincluded in the same MER may be used as the spatial merging candidateblock. In other words, according to an exemplary embodiment of thepresent invention, when the merging candidate block of the current blockis included in the same MER as the current block, the merging candidateblock of the current block is excluded and the motion information of atleast one block of other location may be added as the merging candidateaccording to the size of the current block and the MER size. Asdescribed above, a method of determining the merging candidate block maybe performed through a step of decoding MER (Motion Estimation Region)related information, a step of determining whether the prediction objectblock and the merging candidate block are included in the same MER, anda step of determining that the merging candidate block is unavailablefor inter prediction with merge mode when the merging candidate blockand the prediction object block are included in the same MER.

According to another exemplary embodiment of the present invention,among the spatial merging candidate blocks for performing the interprediction, only the spatial merging candidate block which is notincluded in the same MER and is already encoded or decoded may be usedto perform the inter prediction.

A reference picture index value of the temporal merging candidate isderived (step S810).

The reference picture index value of the temporal merging candidate isan index value of the Col picture including the temporal mergingcandidate (Col block) and may be derived through a particular conditionas below. For example, when a point at top left of the prediction objectblock is (xP, yP), a width of the is nPSW, and a height of theprediction object block is nPSH, the reference picture index value ofthe temporal merging candidate may be determined as the same value asthe reference picture index value of the neighboring prediction unit(hereinafter, referred to as “neighboring prediction unit for derivingreference picture index”) if 1) there is the neighboring prediction unitof the prediction object block corresponding to a location (xP-1,yP+nPSH-1), 2) a partition index value of the neighboring predictionunit for deriving reference picture index is 0, 3) the neighboringprediction unit for deriving reference picture index is not a block thatperforms the prediction using the intra prediction mode, and 4) theprediction object block and the neighboring prediction unit for derivingreference picture index are not included in the same MER (MotionEstimation Region). If the above conditions are not satisfied, thereference picture index value of the temporal merging candidate may beset to 0.

The temporal merging candidate is determined and the motion predictionrelated information is derived from the temporal merging candidate (stepS820).

In order to determine the temporal merging candidate block (Col block)and derive the motion prediction related information based on thedetermined temporal merging candidate block (Col block), a location ofthe Col block which is used to derive a temporal prediction motionvector may be determined based on conditions such as, for example,whether the Col block is available for the prediction object block, orwhere a location of the prediction object block is relative to the LCU(e.g., whether the location of the prediction object block is located ata bottom boundary or a right boundary relative to the LCU). Throughderiving the motion prediction related information based on thedetermined reference picture information of the Col block and the motionprediction vector information, the motion prediction related informationmay be derived from the temporal merging candidate block (Col block).

A merging candidate list is constructed (step S830).

The merging candidate list may be constructed by including at least oneof the spatial merging candidate and the temporal merging candidate. Thespatial merging candidate and the temporal merging candidate included inthe merging candidate list may be arranged with a fixed priority.

The merging candidate list may be constructed by including a fixednumber of merging candidates. When merging candidates are deficient forgenerating the fixed number of the merging candidates, a mergingcandidate may be generated by combining the motion prediction relatedinformation of the merging candidate or the merging candidate list maybe generated by adding a zero vector as the merging candidate.

As described above, the above method of deriving the merging candidatemay be used not only in the inter-frame prediction method using themerge mode but also in the inter-frame prediction mode using the skipmode and this exemplary embodiment is also included in the claim scopeof the present invention.

While the present disclosure has been described with reference toexemplary embodiments thereof, it will be understood by those ofordinary skill in the art that various changes and modifications may bemade therein without departing from the spirit and scope of the presentinvention as defined by the following claims.

1. A method of deriving a merging candidate, the method comprising:decoding motion estimation region (MER) related information; determiningwhether a prediction object block and a spatial merging candidate blockare included in same MER; and deciding the spatial merging candidateblock as an unavailable merging candidate block if the prediction objectblock and the spatial merging candidate block are included in the sameMER.
 2. The method of claim 1, further comprising: if the predictionobject block and the spatial merging candidate block are included in thesame MER, adaptively deciding a spatial merging candidate blockaccording to a size of the MER and a size of the prediction objectblock.
 3. The method of claim 2, wherein, if the size of the MER is 8×8and the size of the prediction object block is 8×4 or 4×8, at least oneof spatial merging candidate blocks of the prediction object block isreplaced with a block including a point located outside of the MER. 4.The method of claim 1, further comprising: determining whether thespatial merging candidate block is included in an MER that is not yetdecoded.
 5. The method of claim 1, further comprising: if the predictionobject block and the spatial merging candidate block are included in thesame MER, replacing the spatial merging candidate block with a blockincluded in other MER.
 6. The method of claim 5, wherein the replacedspatial merging candidate block is a spatial merging candidate blockwhich is adaptively replaced to be included in an MER different from theprediction object block according to a location of the spatial mergingcandidate block included in the same MER.
 7. The method of claim 1,wherein the MER related information is information related to the sizeof the MER, and is transmitted in a picture unit.
 8. The method of claim1, wherein the determining whether the prediction object block and thespatial merging candidate block are included in the same MER is a stepthat determines whether the prediction object block and the spatialmerging candidate block are included in the same MER according to adetermination equation based on location information of the predictionobject block, location information of the spatial merging candidateblock, and size information of the MER.
 9. An video decoding apparatuscomprising: an entropy decoding module for decoding motion estimationregion (MER) related information; and a prediction module fordetermining whether a prediction object block and a spatial mergingcandidate block are included in same MER, and deciding the spatialmerging candidate block as an unavailable merging candidate block if theprediction object block and the spatial merging candidate block areincluded in the same MER.
 10. The video decoding apparatus of claim 9,wherein the prediction module adaptively decides a spatial mergingcandidate block according to a size of the MER and a size of theprediction object block if the prediction object block and the spatialmerging candidate block are included in the same MER.
 11. The videodecoding apparatus of claim 10, wherein, if the size of the MER is 8×8and the size of the prediction object block is 8×4 or 4×8, theprediction module replaces at least one of spatial merging candidateblocks of the prediction object block with a block including a pointlocated outside of the MER.
 12. The video decoding apparatus of claim 9,wherein the prediction module determines whether the spatial mergingcandidate block is included in an MER that is not yet decoded.
 13. Thevideo decoding apparatus of claim 9, wherein, if the prediction objectblock and the spatial merging candidate block are included in the sameMER, the prediction module replaces the spatial merging candidate blockwith a block included in other MER.
 14. The video decoding apparatus ofclaim 13, wherein the replaced spatial merging candidate block is aspatial merging candidate block which is adaptively replaced to beincluded in an MER different from the prediction object block accordingto a location of the spatial merging candidate block included in thesame MER.
 15. The video decoding apparatus of claim 9, wherein the MERrelated information is information related to a size of the MER, and istransmitted in a picture unit.
 16. The video decoding apparatus of claim9, wherein the prediction module determines whether the predictionobject block and the spatial merging candidate block are included in thesame MER according to a determination equation based on locationinformation of the prediction object block, location information of thespatial merging candidate block, and size information of the MER.